ActiveReportsでは、パラメータ付きのレポートを作成することができます。「All」オプションを選択し、すべてのデータを表示したり、多数のアイテムに対してデータを表示するために複数の値を選択したりすることができます。
このチュートリアルでは、複数のパラメータとすべてのデータを選択するオプションについて説明します。
このトピックでは、以下のタスクを行います。
- Visual StudioプロジェクトにActiveReportを追加する
- レポートをデータソースに接続する
- パラメータ付きのデータセットを追加する
- レポートのパラメータを追加する
- パラメータ値のためにデータセットを追加する
- レポートのレイアウトを作成する
- レポートを表示する
 |
メモ:
- このチュートリアルでは、Reelsデータベース(Reels.mdb)のMovieテーブルを使用しています。Reelsデータベース(..\ActiveReportsNET9\Data\Reels.mdb)へのアクセス権限が必要です。
- このチュートリアルではページレポートを使用していますが、RDLレポートを使用した場合も同様の手順で作成することが可能です。
|
チュートリアルを完了すると、次のレポートが作成されます。
設計時のレイアウト
実行時のレイアウト
Visual StudioプロジェクトにActiveReportを追加する
- Visual Studioで新規プロジェクトを開きます。
- [プロジェクト]メニューから[新しい項目の追加]を選択します。
- [新しい項目の追加]ダイアログで[ActiveReports 9.0Jページレポート]を選択し、ファイル名を「MoviesByProducer」に変更します。
- [追加]ボタンをクリックします。
詳細は、「プロジェクトにレポートを追加する」を参照してくだざい。
レポートをデータソースに接続する
- 「レポートエクスプローラ」 で、データソースのノードを右クリックして、[データソースの追加]のオプションを選択するか、[追加]ボタンから[データソース]を選択します。

- [レポートデータソース]ダイアログで、[全般]ページを選択し、名前を「ReportData」に変更します。
- このチュートリアルでは、Reelsデータベースに接続します。詳細は、「データソースとの接続」を参照してくだざい。
パラメータ付きのデータセットを作成する
- 「レポートエクスプローラ」 で、データソースのノードを右クリックし、[データセットの追加]を選択します。
- [データセット]ダイアログで、[全般]ページを選択し、[名前]フィールドを「Producers」に変更します。この名前はレポートエクスプローラで、データソースの子ノードとして表示されます。
- [データセット]ダイアログの[クエリ]フィールドに次のSQLクエリを入力します。
SQLクエリ |
コードのコピー
|
SELECT -1 AS ProductionID, "(All)" AS Name
FROM Producers
UNION
SELECT ProductionID, Name
FROM Producers;
|
- クエリを検証するには、クエリボックスの横にある[データセットの検証]アイコンをクリックします。

- [OK]をクリックしてダイアログを閉じます。データセットとクエリフィールドは、レポートエクスプローラのノードとして表示されます。
レポートのパラメータを作成する
- [レポートエクスプローラ]で、パラメータのノードを選択します。
- ノードを右クリックし、[パラメータの追加]を選択して[レポート - パラメータ]ダイアログを開きます。
- 表示されるダイアログボックスで、[追加]ボタンをクリックしてリストに新しいパラメータを追加します。
- 以下のプロパティを設定します。
[全般]タブ
- 名前: ProductionID
- データ型: Integer
- パラメータ入力ダイアログに表示する文字列: 映画製作会社を選択してください。
- リストから一つ以上の映画製作会社を選択するには[複数の値を許可]の横にあるチェックボックスを選択します。
[使用できる値]タブでは、クエリを選択します。
- データセット: Producers
- 値: ProductionID
- ラベル: Name
 |
メモ: パラメータの名前は、対象レポートのパラメータの名前と一致させる必要があります。パラメータでは、スペルミス、大文字/小文字の違い、または、無効なパラメータが指定されている場合には、レポートは正しく動作しません。レポートからリストにある値の列にパラメータを渡すことができます。リンクしたレポートでパラメータに対して不適切な値を指定するか、パラメータの名前が一致しない場合、リンクしたレポートは実行されません。 |
- [OK]をクリックしてダイアログを閉じ、コレクションにパラメータを追加します。この名前はレポートエクスプローラで、パラメータの子ノードとして表示されます。
パラメータ値のためにデータセットを追加する
- 「レポートエクスプローラ」 では、データソースノードを右クリックし、[データセットの追加]を選択します。
- [データセット]ダイアログでは、[全般]ページを選択してデータセットの[名前]フィールドを「Movies」に変更します。この名前はレポートエクスプローラで、データソースの子ノードとして表示されます。
- [パラメータ]ページにある[名前]オプションで[Param1]を入力します。
- [値]に「
=Parameters!ProductionID.Value」
を入力します。
- [パラメータ]ページにある[名前]オプションで[Param2]を入力します。
- [値]に「
=Parameters!ProductionID.Value」
を入力します。
- [データセット]ダイアログの[クエリ]フィールドに次のSQLクエリを入力します。
SQLクエリ |
コードのコピー
|
SELECT Movie.Title, Movie.YearReleased, Movie.UserRating, Producers.Name
FROM Producers INNER JOIN (Movie INNER JOIN MovieProducers ON Movie.MovieID = MovieProducers.MovieID) ON Producers.ProductionID = MovieProducers.ProductionID
WHERE (MovieProducers.ProductionID IN (?))OR (-1 IN (?))
ORDER BY MovieProducers.ProductionID, Movie.YearReleased;
|
- クエリを検証するには、クエリボックスの横にある[データセットの検証]アイコンをクリックします。

- [OK]をクリックしてダイアログを閉じます。データセットとクエリフィールドは、レポートエクスプローラのノードとして表示されます。
レポートのレイアウトを作成する
- ツールボックスからデザナ面上に「Table」をドラッグし、「[プロパティ]ウィンドウ」では次のプロパティを設定します。
プロパティ名 |
値 |
Location |
0in, 1in |
DataSetName |
Movies |
FixedSize(固定ページ形式のレイアウト用のみ) |
6.5in, 7.5in |
- Table内にクリックして[Table]の上側と左側に列と行のハンドルを表示します。
- レポート内にデータをグループ化するには、詳細行の左にあるアイコンを右クリックして[グループの挿入]を選択します。
- [Table - グループ]ダイアログで、[式]の下の「
=Fields!Name.Value」
を選択し、各映画製作者のすべての詳細をグループします。
- 名前を「Producer」に変更します。
 |
メモ:[Table - グループ]の名前は、式を設定するまで変更できません。 |
- ヘッダをすべてのページに印刷するには、[Table - グループ]ダイアログの[レイアウト]で、[グループヘッダを繰り返す]の横にあるチェックボックスをチェックします。
- このレポートではグループフッタは必要ないため、[グループフッタを含む]の横にあるチェックボックスをクリアします。
- [OK]をクリックしてダイアログを閉じます。
- 「レポートエクスプローラ」で、[Movies] データセットから以下のフィールドをテーブルの詳細行にドラッグし、次のテーブルのようにプロパティを設定します。
フィールド |
列 |
幅 |
Title |
TableColumn1 |
3.9in |
YearReleased |
TableColumn2 |
1.3in |
UserRating |
TableColumn3 |
1.3in |
- フィールド名に対応するラベルは自動的にテーブルのヘッダ行に配置されます。テーブルのヘッダ行を選択し、Textを「Bold」、FontSizeを「11pt」に設定します。
- 「レポートエクスプローラ」にある[Movies]データセットから[Name] フィールドをグループヘッダ行の1番目の列にドラッグし、次のプロパティを設定します。
プロパティ名 |
値 |
FontWeight |
Bold |
BackgroundColor |
Thistle |
 |
ヒント: グループヘッダ行の3つのセルを選択するにはShiftキーを使用します。右クリックし、[セルの結合]を選択し、長い映画制作名の折り返しを防ぎます。 |
レポートを表示する
- 設計時にレポートを表示するには、プレビュータブをクリックします。
または、